Skip to content

feat: Add link checker to Actions #573

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Jul 10, 2025
Merged

Conversation

pthmas
Copy link
Contributor

@pthmas pthmas commented Jun 18, 2025

Overview

This PR adds the lychee link checker as a GitHub Action for this repo.
See: https://github.com/lycheeverse/lychee-action
It also fixes all the dead links to pass the test.

Summary by CodeRabbit

  • Chores

    • Introduced an automated workflow to check for broken links in pull requests.
  • Documentation

    • Updated and standardized internal and external documentation links for improved accuracy and consistency.
    • Removed the blog post "Sovereign rollups on Bitcoin with Rollkit" from the documentation and sidebar.
    • Made minor text and formatting adjustments in various guides and blog posts for clarity and consistency.
    • Updated or removed outdated references and URLs across multiple guides and tutorials.

Copy link
Contributor

coderabbitai bot commented Jun 18, 2025

Walkthrough

This update introduces a GitHub Actions workflow for automated link checking, removes the "Sovereign rollups on Bitcoin with Rollkit" blog post and its references, and updates numerous documentation links for consistency and accuracy. Several markdown files have internal and external links revised or replaced, with some minor formatting edits.

Changes

File(s) Change Summary
.github/workflows/external-link-check.yml Added a new GitHub Actions workflow for automated link checking on pull requests.
.vitepress/config.ts, blog/overview.md, blog/sovereign-rollups-on-bitcoin.md Removed the "Sovereign rollups on Bitcoin with Rollkit" blog post and its sidebar/table of contents references.
blog/rollkit-the-first-sovereign-rollup-framework.md Updated image path and removed a markdown link from the Cosmos tooling list.
guides/config.md, guides/create-genesis.md, guides/cw-orch.md, guides/ibc-connection.md, Updated internal documentation links to use absolute paths or more accurate references.
guides/restart-rollup.md, guides/use-tia-for-gas.md, guides/zkml.md, learn/about.md, Updated URLs and internal references for clarity and consistency.
learn/stack.md Updated various documentation URLs and references to current or more accurate links.
tutorials/da/celestia-da.md, tutorials/da/local-da.md, tutorials/da/overview.md, Updated tutorial links to use absolute paths and/or include .md extensions.
tutorials/deploy-overview.md, tutorials/execution/cosmwasm.md, tutorials/sequencing/overview.md Updated or removed markdown links and adjusted link formats for consistency.

Sequence Diagram(s)

sequenceDiagram
    participant GitHub
    participant Workflow
    participant lychee-action

    GitHub-->>Workflow: Pull request event (opened/reopened/synchronized/closed)
    Workflow->>Workflow: Checkout repository code
    Workflow->>lychee-action: Run link checker on markdown files
    lychee-action-->>Workflow: Report broken links (if any)
    Workflow-->>GitHub: Fail workflow if broken links found
Loading

Possibly related PRs

Suggested labels

documentation

Suggested reviewers

  • Manav-Aggarwal
  • gupadhyaya

Poem

A rabbit hops through docs so neat,
Tidying links, making guides complete.
Old blogs retire, new checks arrive,
Markdown paths now thrive.
With every hop, the docs grow strong—
Hippity-hop, the links belong!
🐇✨

✨ Finishing Touches
  • 📝 Generate Docstrings

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@pthmas pthmas self-assigned this Jun 18, 2025
Copy link
Contributor

github-actions bot commented Jun 18, 2025

PR Preview Action v1.6.2
Preview removed because the pull request was closed.
2025-07-10 11:45 UTC

@pthmas pthmas force-pushed the pierrick/external_link_checker branch 5 times, most recently from 405d3ad to b6d8347 Compare July 9, 2025 11:41
@pthmas pthmas force-pushed the pierrick/external_link_checker branch from 868571f to 6bef6b6 Compare July 9, 2025 12:00
@pthmas pthmas force-pushed the pierrick/external_link_checker branch 2 times, most recently from 373d3da to 56fa3ea Compare July 9, 2025 12:05
@pthmas pthmas force-pushed the pierrick/external_link_checker branch from 56fa3ea to 28d85f6 Compare July 9, 2025 12:12
@pthmas pthmas force-pushed the pierrick/external_link_checker branch from 28d85f6 to b13e912 Compare July 9, 2025 12:14
@pthmas pthmas force-pushed the pierrick/external_link_checker branch from b13e912 to 1d2c0c0 Compare July 9, 2025 12:18
@pthmas pthmas force-pushed the pierrick/external_link_checker branch from 1d2c0c0 to 3ab1ffd Compare July 9, 2025 12:21
@pthmas pthmas force-pushed the pierrick/external_link_checker branch from 3ab1ffd to 09d4182 Compare July 9, 2025 12:29
@pthmas pthmas force-pushed the pierrick/external_link_checker branch from 007a4c1 to 9260507 Compare July 9, 2025 12:49
@pthmas pthmas changed the title feat: Add external link checker to Actions feat: Add link checker to Actions Jul 9, 2025
@pthmas pthmas force-pushed the pierrick/external_link_checker branch from b23ea9d to 9c069a7 Compare July 9, 2025 15:43

- name: Link Checker
id: lychee
uses: lycheeverse/lychee-action@v2

Check warning

Code scanning / CodeQL

Unpinned tag for a non-immutable Action in workflow Medium

Unpinned 3rd party Action 'Link Checker' step
Uses Step: lychee
uses 'lycheeverse/lychee-action' with ref 'v2', not a pinned commit hash
@pthmas pthmas requested a review from tac0turtle July 10, 2025 10:10
@pthmas pthmas marked this pull request as ready for review July 10, 2025 10:10
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

♻️ Duplicate comments (1)
.github/workflows/external-link-check.yml (1)

24-32: Pin the lychee-action to a commit hash

Security scanners already complain that lycheeverse/lychee-action@v2 is unpinned. Pinning eliminates the risk of a supply-chain attack and silences the alert.

-      - name: Link Checker
-        id: lychee
-        uses: lycheeverse/lychee-action@v2
+      - name: Link Checker
+        id: lychee
+        # v2.4.0 commit digest as of 2024-07-09
+        uses: lycheeverse/lychee-action@e7d8b9d93f8c6c6db9f7d0a4a1f2dc8ff2c6ad9e
🧹 Nitpick comments (13)
tutorials/da/local-da.md (1)

12-12: Prefer extension-less internal links for VitePress

Using /tutorials/quick-start.md works, but VitePress automatically resolves .md and appends a trailing slash when building clean URLs.
Sticking with /tutorials/quick-start keeps URLs consistent across the docs site and avoids duplicated “.html” suffixes in the generated output.

-[quick start](/tutorials/quick-start.md)
+[quick start](/tutorials/quick-start)

Same for the gm-world reference a few words later.

guides/config.md (1)

576-576: Confirm metrics link renders correctly

Absolute path plus .md is fine, but most other links in the docs omit the extension (e.g. /guides/metrics).
Recommend aligning for uniformity and to prevent “.html” duplication in the built site.
Feel free to ignore if you deliberately want the explicit file name.

blog/rollkit-the-first-sovereign-rollup-framework.md (1)

36-36: Restored plain “BlockSDK” loses useful hyperlink

Previously this pointed readers to Skip’s docs. Consider retaining the link to keep parity with the surrounding tooling references.

-and BlockSDK
+and [BlockSDK](https://docs.skip.money/blocksdk/overview/)
tutorials/execution/cosmwasm.md (1)

31-31: Minor: follow existing link style

Same comment as earlier—dropping .md keeps URL styling consistent:

-[GM Rollup](/tutorials/gm-world.md)
+[GM Rollup](/tutorials/gm-world)
learn/about.md (2)

63-64: Minor phrasing issue.

“The components used by the Rollkit stack are customizable.”
You might want to append “(see above)” or similar for clarity—otherwise reads abruptly.


97-98: Duplication of “section” wording.

Sentence already says “Tutorials section”; consider dropping the second “section” for conciseness.

guides/create-genesis.md (1)

30-31: Sentence casing: “guide” ⇒ lowercase.

Nitpick for consistency: “…follow a [guide]…”

tutorials/da/celestia-da.md (1)

49-50: Typo in list item.

gmd CLI originates in the GM world tutorial—consider capitalising “GM” for consistency with branding.

tutorials/da/overview.md (1)

61-61: Absolute link ✓ – but keep the trailing slash for Docusaurus

Using /tutorials/quick-start.md is fine, however Docusaurus treats trailing slashes & missing .md consistently. If other pages still use /tutorials/quick-start/, we’ll have duplicate URLs in the build. Consider standardising on one convention project-wide.

guides/restart-rollup.md (2)

50-51: Updated Mocha docs URL may still drift

Celestia docs tend to re-organise; pinning to a specific commit or tag (e.g. https://raw.githubusercontent.com/.../<sha>/...) would make the link checker more stable.


91-91: Minor style nit – “in order to”

You can drop “in order” for conciseness.

- you will need to increase the gas fee in order to avoid a
+ you will need to increase the gas fee to avoid a
.github/workflows/external-link-check.yml (1)

21-23: Least-privilege permissions

issues: write is requested but the issue-creation step is commented out. Remove or scope it behind if: to avoid unnecessarily elevated permissions.

learn/stack.md (1)

65-66: Avoid hard-coding GitHub line numbers

manager.go#L101 will drift as the file evolves. Dropping the #L101 anchor (or linking to a permanent permalink at a commit) prevents inevitable rot:

-https://github.com/rollkit/rollkit/blob/main/block/manager.go#L101
+https://github.com/rollkit/rollkit/blob/main/block/manager.go
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 5f05003 and 9d13273.

⛔ Files ignored due to path filters (3)
  • public/bitcoin-rollkit/rollkit-bitcoin-1.png is excluded by !**/*.png
  • public/bitcoin-rollkit/rollkit-bitcoin-2.png is excluded by !**/*.png
  • public/bitcoin-rollkit/rollkit-bitcoin.png is excluded by !**/*.png
📒 Files selected for processing (20)
  • .github/workflows/external-link-check.yml (1 hunks)
  • .vitepress/config.ts (0 hunks)
  • blog/overview.md (0 hunks)
  • blog/rollkit-the-first-sovereign-rollup-framework.md (2 hunks)
  • blog/sovereign-rollups-on-bitcoin.md (0 hunks)
  • guides/config.md (1 hunks)
  • guides/create-genesis.md (2 hunks)
  • guides/cw-orch.md (1 hunks)
  • guides/ibc-connection.md (2 hunks)
  • guides/restart-rollup.md (3 hunks)
  • guides/use-tia-for-gas.md (1 hunks)
  • guides/zkml.md (1 hunks)
  • learn/about.md (3 hunks)
  • learn/stack.md (3 hunks)
  • tutorials/da/celestia-da.md (4 hunks)
  • tutorials/da/local-da.md (1 hunks)
  • tutorials/da/overview.md (2 hunks)
  • tutorials/deploy-overview.md (1 hunks)
  • tutorials/execution/cosmwasm.md (1 hunks)
  • tutorials/sequencing/overview.md (1 hunks)
💤 Files with no reviewable changes (3)
  • blog/overview.md
  • blog/sovereign-rollups-on-bitcoin.md
  • .vitepress/config.ts
🧰 Additional context used
🧠 Learnings (6)
guides/restart-rollup.md (8)
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/relayer.json:1-5
Timestamp: 2024-10-08T09:25:31.642Z
Learning: In the file `guides/assets/hyperlane-use-tia-for-gas/relayer.json`, the settings `"allowLocalCheckpointSyncers": "true"` and `"gasPaymentEnforcement": [{ "type": "none" }]` are intentional.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/relayer.json:1-5
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In the file `guides/assets/hyperlane-use-tia-for-gas/relayer.json`, the settings `"allowLocalCheckpointSyncers": "true"` and `"gasPaymentEnforcement": [{ "type": "none" }]` are intentional.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config.yaml:1-23
Timestamp: 2024-10-08T09:26:23.244Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config.yaml`, it's intentional to use the same signer phrase across multiple network configurations (`localwasm` and `stride-internal-1`).
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config.yaml:1-23
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config.yaml`, it's intentional to use the same signer phrase across multiple network configurations (`localwasm` and `stride-internal-1`).
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:1-23
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to use the same mnemonic for both "localwasm" and "stride-internal-1" networks.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:1-23
Timestamp: 2024-10-08T09:26:38.099Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to use the same mnemonic for both "localwasm" and "stride-internal-1" networks.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:29-37
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to set the multisig threshold to 1 and to only define validators for the `localwasm` network (domain 963).
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:29-37
Timestamp: 2024-10-08T09:27:02.351Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to set the multisig threshold to 1 and to only define validators for the `localwasm` network (domain 963).
tutorials/execution/cosmwasm.md (4)
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:29-37
Timestamp: 2024-10-08T09:27:02.351Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to set the multisig threshold to 1 and to only define validators for the `localwasm` network (domain 963).
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:29-37
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to set the multisig threshold to 1 and to only define validators for the `localwasm` network (domain 963).
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:1-23
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to use the same mnemonic for both "localwasm" and "stride-internal-1" networks.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:1-23
Timestamp: 2024-10-08T09:26:38.099Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to use the same mnemonic for both "localwasm" and "stride-internal-1" networks.
guides/ibc-connection.md (6)
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/relayer.json:1-5
Timestamp: 2024-10-08T09:25:31.642Z
Learning: In the file `guides/assets/hyperlane-use-tia-for-gas/relayer.json`, the settings `"allowLocalCheckpointSyncers": "true"` and `"gasPaymentEnforcement": [{ "type": "none" }]` are intentional.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/relayer.json:1-5
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In the file `guides/assets/hyperlane-use-tia-for-gas/relayer.json`, the settings `"allowLocalCheckpointSyncers": "true"` and `"gasPaymentEnforcement": [{ "type": "none" }]` are intentional.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config.yaml:1-23
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config.yaml`, it's intentional to use the same signer phrase across multiple network configurations (`localwasm` and `stride-internal-1`).
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config.yaml:1-23
Timestamp: 2024-10-08T09:26:23.244Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config.yaml`, it's intentional to use the same signer phrase across multiple network configurations (`localwasm` and `stride-internal-1`).
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:1-23
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to use the same mnemonic for both "localwasm" and "stride-internal-1" networks.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:1-23
Timestamp: 2024-10-08T09:26:38.099Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to use the same mnemonic for both "localwasm" and "stride-internal-1" networks.
guides/use-tia-for-gas.md (10)
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/relayer.json:1-5
Timestamp: 2024-10-08T09:25:31.642Z
Learning: In the file `guides/assets/hyperlane-use-tia-for-gas/relayer.json`, the settings `"allowLocalCheckpointSyncers": "true"` and `"gasPaymentEnforcement": [{ "type": "none" }]` are intentional.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/relayer.json:1-5
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In the file `guides/assets/hyperlane-use-tia-for-gas/relayer.json`, the settings `"allowLocalCheckpointSyncers": "true"` and `"gasPaymentEnforcement": [{ "type": "none" }]` are intentional.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/hyperlane-use-tia-for-gas.md:77-82
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In the 'hyperlane-use-tia-for-gas.md' guide, it is intentional to include the seed phrase directly in the code examples.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/hyperlane-use-tia-for-gas.md:77-82
Timestamp: 2024-10-08T09:29:26.874Z
Learning: In the 'hyperlane-use-tia-for-gas.md' guide, it is intentional to include the seed phrase directly in the code examples.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config.yaml:1-23
Timestamp: 2024-10-08T09:26:23.244Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config.yaml`, it's intentional to use the same signer phrase across multiple network configurations (`localwasm` and `stride-internal-1`).
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config.yaml:1-23
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config.yaml`, it's intentional to use the same signer phrase across multiple network configurations (`localwasm` and `stride-internal-1`).
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:29-37
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to set the multisig threshold to 1 and to only define validators for the `localwasm` network (domain 963).
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:29-37
Timestamp: 2024-10-08T09:27:02.351Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to set the multisig threshold to 1 and to only define validators for the `localwasm` network (domain 963).
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:1-23
Timestamp: 2024-10-08T09:26:38.099Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to use the same mnemonic for both "localwasm" and "stride-internal-1" networks.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:1-23
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to use the same mnemonic for both "localwasm" and "stride-internal-1" networks.
guides/create-genesis.md (4)
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config.yaml:1-23
Timestamp: 2024-10-08T09:26:23.244Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config.yaml`, it's intentional to use the same signer phrase across multiple network configurations (`localwasm` and `stride-internal-1`).
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config.yaml:1-23
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config.yaml`, it's intentional to use the same signer phrase across multiple network configurations (`localwasm` and `stride-internal-1`).
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:1-23
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to use the same mnemonic for both "localwasm" and "stride-internal-1" networks.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:1-23
Timestamp: 2024-10-08T09:26:38.099Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to use the same mnemonic for both "localwasm" and "stride-internal-1" networks.
tutorials/da/celestia-da.md (6)
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/relayer.json:1-5
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In the file `guides/assets/hyperlane-use-tia-for-gas/relayer.json`, the settings `"allowLocalCheckpointSyncers": "true"` and `"gasPaymentEnforcement": [{ "type": "none" }]` are intentional.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/relayer.json:1-5
Timestamp: 2024-10-08T09:25:31.642Z
Learning: In the file `guides/assets/hyperlane-use-tia-for-gas/relayer.json`, the settings `"allowLocalCheckpointSyncers": "true"` and `"gasPaymentEnforcement": [{ "type": "none" }]` are intentional.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:29-37
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to set the multisig threshold to 1 and to only define validators for the `localwasm` network (domain 963).
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:29-37
Timestamp: 2024-10-08T09:27:02.351Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to set the multisig threshold to 1 and to only define validators for the `localwasm` network (domain 963).
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:1-23
Timestamp: 2024-10-11T19:05:20.591Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to use the same mnemonic for both "localwasm" and "stride-internal-1" networks.
Learnt from: assafmo
PR: rollkit/docs#390
File: guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml:1-23
Timestamp: 2024-10-08T09:26:38.099Z
Learning: In `guides/assets/hyperlane-use-tia-for-gas/hyperlane-config-2.yaml`, it's intentional to use the same mnemonic for both "localwasm" and "stride-internal-1" networks.
🪛 LanguageTool
guides/restart-rollup.md

[style] ~91-~91: Consider a more concise word here.
Context: ..., you will need to increase the gas fee in order to avoid a Code: 19 error. See the [How ...

(IN_ORDER_TO_PREMIUM)

🪛 GitHub Check: CodeQL
.github/workflows/external-link-check.yml

[warning] 28-28: Unpinned tag for a non-immutable Action in workflow
Unpinned 3rd party Action 'Link Checker' step Uses Step: lychee uses 'lycheeverse/lychee-action' with ref 'v2', not a pinned commit hash

🪛 markdownlint-cli2 (0.17.2)
guides/zkml.md

15-15: Inline HTML
Element: ExecutionCallout

(MD033, no-inline-html)

🔇 Additional comments (16)
guides/use-tia-for-gas.md (1)

264-264: Double-check updated Celestia docs path

The target moved from /nodes/mocha-testnet#mocha-testnet-faucet to /how-to-guides/mocha-testnet#mocha-testnet-faucet.
I couldn’t find that exact anchor in the new page—please verify the section id still exists, otherwise the hash link will jump to the top instead of the faucet instructions.

guides/ibc-connection.md (2)

4-4: Absolute link looks correct—double-check build output.

/tutorials/gm-world.md resolves in GitHub but, depending on the VitePress config, the .md suffix may be stripped in the generated URL. Confirm that the built site doesn’t redirect to .../gm-world.html (resulting in a 404 when the ‑checker runs).


68-70: Consistent path update—good catch.
Change aligns the “tip” with the new canonical link.

learn/about.md (1)

17-18: Link update LGTM—confirm anchor presence.

The absolute path with .md matches other docs; just make sure the target file still exposes the default # anchor so scrolling works when the site strips extensions.

guides/create-genesis.md (1)

9-10: Updated link OK—verify tutorial still covers Ignite context.

The new target (gm-world) is broader than “ignite-rollkit”. Ensure the tutorial still explains Ignite specifics; otherwise readers may be confused.

tutorials/da/celestia-da.md (4)

12-13: GM-world link consistent—good.

No issues.


39-42: Check new Celestia docs paths.

https://docs.celestia.org/how-to-guides/* was recently moved to /learn/* during docs overhaul. Run lychee or curl to be sure the new endpoints don’t 404.


120-121: Anchor changed—validate redirect.

The previous anchor #namespaces moved; confirm the revised URL still lands on the “Namespaces” section or update with the current anchor.


149-151: Explorer links: same path-change caveat.

As with earlier Celestia docs links, double-check these how-to-guides/*#explorers targets survive the site migration.

guides/cw-orch.md (1)

248-249: Confirm new paths actually exist in contracts-ws branch

The examples were moved from contracts/ to contracts-ws/contracts/. Double-check that the contracts-ws directory is present on the main branch of the upstream repo; otherwise these links will 404 and the new link-checker workflow will fail the build.

tutorials/da/overview.md (1)

75-76: Nice update

Switching to absolute paths with .md ensures the new link-checker resolves them correctly. No issues spotted.

guides/restart-rollup.md (1)

12-12: Good switch to absolute link

The updated quick-start link aligns with the rest of the docs, preventing relative-path breakage when the file moves.

tutorials/sequencing/overview.md (1)

29-30: Link targets confirmed

The explicit .md extension prevents SSR frameworks from attempting directory resolution; looks good.

learn/stack.md (2)

53-54: Verify the new Celestia docs URL

https://docs.celestia.org/tutorials/node-tutorial/ looks correct today, but Celestia has re-organised its docs a few times. Please double-check that the link is stable (or pin to a permalink) so the new link checker does not start failing in the near future.


61-62: Link targets a personal feature branch – fragile

https://github.com/rollkit/go-execution-abci/blob/marko/vn/pkg/rpc/core/mempool.go

The marko/vn branch appears to be a personal or feature branch rather than main or a tagged release.
Once that branch is deleted or force-pushed, the link checker will break. Consider:

-https://github.com/rollkit/go-execution-abci/blob/marko/vn/pkg/rpc/core/mempool.go
+https://github.com/rollkit/go-execution-abci/blob/main/pkg/rpc/core/mempool.go

or pin to a specific commit hash for full stability.

tutorials/deploy-overview.md (1)

19-20: Confirm that adding “.md” does not break VitePress routing

VitePress usually resolves /tutorials/docker-compose automatically.
With the explicit .md, the generated URL may become /tutorials/docker-compose.md.html, depending on the build config. Make sure the docs site still renders and the new link checker passes.

No change requested if it renders correctly.

Comment on lines +21 to 22
This walkthrough assumes you started the Polaris EVM using Rollkit and should be interpreted as a direct continuation of this Polaris EVM and Rollkit guide.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Same issue here—broken discovery path.

Re-link “Polaris EVM and Rollkit guide” so readers can jump directly.

🤖 Prompt for AI Agents
In guides/zkml.md around lines 21 to 22, the reference to the "Polaris EVM and
Rollkit guide" is a broken link. Update this text to include a proper hyperlink
pointing directly to the correct location or URL of the Polaris EVM and Rollkit
guide, enabling readers to navigate there easily.

@tac0turtle tac0turtle merged commit 8a658d3 into main Jul 10, 2025
15 of 16 checks passed
@tac0turtle tac0turtle deleted the pierrick/external_link_checker branch July 10, 2025 11:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants